home *** CD-ROM | disk | FTP | other *** search
/ Sprite 1984 - 1993 / Sprite 1984 - 1993.iso / lib / tex / inputs / amscd.sty < prev    next >
Encoding:
Text File  |  1991-09-26  |  7.0 KB  |  181 lines

  1. %% This is file `amscd.sty' generated from `amscd.doc'
  2. %% on 21-JUN-1991 by the docstrip.ams utility (1.0). 
  3. %% 
  4. %%@texfile{
  5. %% filename="amscd.sty",
  6. %% version="1.1",
  7. %% date="21-JUN-1991",
  8. %% filetype="AMS-LaTeX: option",
  9. %% copyright="Copyright (C) American Mathematical Society, all rights
  10. %%   reserved.  Copying of this file is authorized only if either:
  11. %%   (1) you make absolutely no changes to your copy, including name;
  12. %%   OR (2) if you do make changes, you first rename it to some other
  13. %%   name.",
  14. %% author="American Mathematical Society",
  15. %% address="American Mathematical Society,
  16. %%   Technical Support Group,
  17. %%   P. O. Box 6248,
  18. %%   Providence, RI 02940,
  19. %%   USA",
  20. %% telephone="401-455-4080 or (in the USA) 800-321-4AMS",
  21. %% email="Internet: Tech-Support@Math.AMS.com",
  22. %% checksumtype="line count",
  23. %% checksum="180",
  24. %% codetable="ISO/ASCII",
  25. %% keywords="latex, amslatex, ams-latex, commutative diagram",
  26. %% abstract="This file is part of the AMS-\LaTeX{} package, ver. 1.1.
  27. %%   It is a \LaTeX{} option that adapts the commutative diagram macros
  28. %%   of AMS-\TeX{} for use in \LaTeX{}."
  29. %%}
  30. \expandafter\ifx\csname amscd.sty\endcsname\relax
  31. \expandafter\def\csname amscd.sty\endcsname{}
  32. \else\message{---already loaded}\endinput\fi
  33. \def\filename{amscd.sty}
  34. \def\fileversion{1.1} \def\filedate{21-JUN-1991}
  35. \immediate\write16{%
  36. AMS-Latex option `\filename' (\fileversion, \filedate)}
  37. %%% end of file header
  38. \def\Invalid@@{Invalid use of \string}
  39. \def\Let@{\let\\\math@cr}
  40. \def\RIfM@{\relax\protect\ifmmode}
  41. \@ifundefined{math@cr}
  42.   {\def\math@cr{{\ifnum0=`}\fi
  43.    \new@ifstar{\global\@eqpen\@M\math@cr@}%
  44.           {\global\@eqpen\interdisplaylinepenalty \math@cr@}}}
  45.   {}
  46. \def\math@cr@{\new@ifnextchar[\math@cr@@{\math@cr@@[\z@]}}
  47. \def\math@cr@@[#1]{\ifnum0=`{\fi}\math@cr@@@
  48.   \noalign{\vskip#1\relax}}
  49. \def\restore@math@cr{\def\math@cr@@@{\cr}}
  50. \restore@math@cr
  51. \def\new@ifnextchar#1#2#3{%
  52.   \let\@tempe #1\def\@tempa{#2}\def\@tempb{#3}\futurelet
  53.     \@tempc\new@ifnch}
  54. \def\new@ifnch{\ifx\@tempc \@tempe \let\@tempd\@tempa
  55.              \else\let\@tempd\@tempb\fi\@tempd}
  56. \def\new@ifstar#1#2{\new@ifnextchar *{\def\@tempa*{#1}\@tempa}{#2}}
  57. \def\DN@{\def\next@}
  58. \def\FN@{\futurelet\next}
  59. \def\setboxz@h{\setbox\z@\hbox}
  60. \def\wdz@{\wd\z@}
  61. \def\setbox@ne{\setbox\@ne}
  62. \def\wd@ne{\wd\@ne}
  63. \def\rightarrowfill@#1{\m@th\setboxz@h{$#1-$}\ht\z@\z@
  64.   $#1\copy\z@\mkern-6mu\cleaders
  65.   \hbox{$#1\mkern-2mu\box\z@\mkern-2mu$}\hfill
  66.   \mkern-6mu\mathord\rightarrow$}
  67. \def\leftarrowfill@#1{\m@th\setboxz@h{$#1-$}\ht\z@\z@
  68.   $#1\mathord\leftarrow\mkern-6mu\cleaders
  69.   \hbox{$#1\mkern-2mu\copy\z@\mkern-2mu$}\hfill
  70.   \mkern-6mu\box\z@$}
  71. \def\leftrightarrowfill@#1{\m@th\setboxz@h{$#1-$}\ht\z@\z@
  72.   $#1\mathord\leftarrow\mkern-6mu\cleaders
  73.   \hbox{$#1\mkern-2mu\box\z@\mkern-2mu$}\hfill
  74.   \mkern-6mu\mathord\rightarrow$}
  75. \long\def\@leftmark#1#2{#1}
  76. \long\def\@rightmark#1#2{#2}
  77. \long\def\@ifempty#1{%
  78.  \expandafter\ifx\@car#1@\@nil @\@empty
  79.   \expandafter\@leftmark\else\expandafter\@rightmark\fi}
  80. \long\def\@ifnotempty#1{\@ifempty{#1}{}}
  81. \def\atdef@#1{\expandafter\def\csname\space @\string#1\endcsname}
  82. \begingroup \catcode`\@=\active
  83. \xdef @{\expandafter\noexpand\csname FN\string @\endcsname
  84.   \expandafter\noexpand\csname at\string @\endcsname}
  85. \endgroup
  86. \def\at@{\let\next@\at@@
  87.  \ifcat\noexpand\next a\else
  88.  \ifcat\noexpand\next0\else
  89.  \ifcat\noexpand\next\relax\else
  90.  \let\next@\at@@@\fi\fi\fi\next@}
  91. \def\at@@#1{\expandafter
  92.   \ifx\csname\space @\string#1\endcsname\relax
  93.     \DN@{\at@@@#1}%
  94.   \else
  95.     \DN@{\csname\space @\string#1\endcsname}%
  96.   \fi\next@}%
  97. \def\at@@@{\err@{\Invalid@@ @}{\the\athelp@}\char64\relax}
  98. \@ifundefined{athelp@}{\csname newhelp\endcsname\athelp@
  99. {Only certain combinations beginning with @ make sense to me.^^J%
  100. I'll assume you wanted @@ for a printed @.}}{}
  101. \@ifundefined{err@}{\def\err@{\@latexerr}}{}
  102. \@ifundefined{default@tag}%
  103.   {\def\default@tag{%
  104.     \def\tag{\err@{\string\tag\space not allowed here}\@eha}}}
  105.   {}
  106. \@ifundefined{ex@}{\newdimen\ex@}{}
  107. \@ifundefined{minaw@}{\newdimen\minaw@}{}
  108. \@ifundefined{bigaw@}{\newdimen\bigaw@}{}
  109. \minaw@11.11128\ex@
  110. \newdimen\minCDarrowwidth
  111. \minCDarrowwidth2.5pc
  112. \newif\ifCD@
  113. \let\ampersand@\relax
  114. \def\CD{\catcode`\@\active
  115.  \bgroup\relax\iffalse{\fi\let\ampersand@&\iffalse}\fi
  116.  \CD@true\vcenter\bgroup\Let@\restore@math@cr\default@tag
  117.  \tabskip\z@skip\baselineskip20\ex@
  118.  \lineskip3\ex@\lineskiplimit3\ex@\halign\bgroup
  119.  &\hfill$\m@th##$\hfill\crcr}
  120. \def\endCD{\crcr\egroup\egroup\egroup}
  121. \def\CD@check#1#2{\ifCD@\DN@{#2}\else
  122.   \DN@{\err@{@\string#1 not
  123.     allowed outside of the CD environment}\@eha}%
  124.   \fi\next@}
  125. \atdef@>#1>#2>{\ampersand@
  126.   \ifCD@ \global\bigaw@\minCDarrowwidth \else \global\bigaw@\minaw@ \fi
  127.   \setboxz@h{$\m@th\scriptstyle\;{#1}\;\;$}%
  128.   \ifdim\wdz@>\bigaw@\global\bigaw@\wdz@\fi
  129.   \@ifnotempty{#2}{\setbox@ne\hbox{$\m@th\scriptstyle\;{#2}\;\;$}%
  130.     \ifdim\wd@ne>\bigaw@\global\bigaw@\wd@ne\fi}%
  131.  \ifCD@\enskip\fi
  132.    \mathrel{\mathop{\hbox to\bigaw@{\rightarrowfill@\displaystyle}}%
  133.      \limits^{#1}\@ifnotempty{#2}{_{#2}}}%
  134.  \ifCD@\enskip\fi \ampersand@}
  135. \atdef@<#1<#2<{\ampersand@
  136.   \ifCD@ \global\bigaw@\minCDarrowwidth \else \global\bigaw@\minaw@ \fi
  137.   \setboxz@h{$\m@th\scriptstyle\;\;{#1}\;$}%
  138.   \ifdim\wdz@>\bigaw@ \global\bigaw@\wdz@ \fi
  139.   \@ifnotempty{#2}{\setbox@ne\hbox{$\m@th\scriptstyle\;\;{#2}\;$}%
  140.     \ifdim\wd@ne>\bigaw@ \global\bigaw@\wd@ne \fi}%
  141.   \ifCD@\enskip\fi
  142.     \mathrel{\mathop{\hbox to\bigaw@{\leftarrowfill@\displaystyle}}%
  143.       \limits^{#1}\@ifnotempty{#2}{_{#2}}}%
  144.   \ifCD@\enskip\fi \ampersand@}
  145. \begingroup \catcode`\~=\active \lccode`\~=`\@
  146. \lowercase{%
  147.   \global\atdef@)#1)#2){~>#1>#2>}
  148.   \global\atdef@(#1(#2({~<#1<#2<}
  149. }% end lowercase
  150. \endgroup
  151. \atdef@ A#1A#2A{\CD@check{A..A..A}{\llap{$\m@th\vcenter{\hbox
  152.   {$\scriptstyle#1$}}$}\Big\uparrow
  153.   \rlap{$\m@th\vcenter{\hbox{$\scriptstyle#2$}}$}&&}}
  154. \atdef@ V#1V#2V{\CD@check{V..V..V}{\llap{$\m@th\vcenter{\hbox
  155.   {$\scriptstyle#1$}}$}\Big\downarrow
  156.   \rlap{$\m@th\vcenter{\hbox{$\scriptstyle#2$}}$}&&}}
  157. \atdef@={\CD@check={&\enskip\mathrel
  158.   {\vbox{\hrule\@width\minCDarrowwidth\vskip2\ex@\hrule\@width
  159.   \minCDarrowwidth}}\enskip&}}
  160. \atdef@|{\CD@check|{\Big\Vert&&}}
  161. \atdef@\vert{\CD@check\vert{\Big\Vert&&}}
  162. \atdef@.{\CD@check.{&&}}
  163. %% \CharacterTable
  164. %%  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
  165. %%   Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
  166. %%   Digits        \0\1\2\3\4\5\6\7\8\9
  167. %%   Exclamation   \!     Double quote  \"     Hash (number) \#
  168. %%   Dollar        \$     Percent       \%     Ampersand     \&
  169. %%   Acute accent  \'     Left paren    \(     Right paren   \)
  170. %%   Asterisk      \*     Plus          \+     Comma         \,
  171. %%   Minus         \-     Point         \.     Solidus       \/
  172. %%   Colon         \:     Semicolon     \;     Less than     \<
  173. %%   Equals        \=     Greater than  \>     Question mark \?
  174. %%   Commercial at \@     Left bracket  \[     Backslash     \\
  175. %%   Right bracket \]     Circumflex    \^     Underscore    \_
  176. %%   Grave accent  \`     Left brace    \{     Vertical bar  \|
  177. %%   Right brace   \}     Tilde         \~}
  178. \endinput
  179. %% 
  180. %% End of file `amscd.sty'.
  181.